#ifndef GAMEROOM_H
#define GAMEROOM_H

#include <QWidget>
#include<QSound>

//枚举蛇的移动方向
enum class move_direction
{
    UP=0,
    DOWN,
    LEFT,
    RIGHT
};

class GameRoom : public QWidget
{
    Q_OBJECT
public:
    explicit GameRoom(QWidget *parent = nullptr);
    void paintEvent(QPaintEvent *event);//重写绘图事件

    void moveUP();//向上移动
    void moveDown();//向下移动
    void moveLeft();//向左移动
    void moveRight();//向右移动
    bool isOver();//游戏是否结束
    void createNewFood();//创建新的食物
    void setTimeout(int time){moveSpeed=time;};


////定义蛇
private:
    move_direction moveDirect=move_direction::UP;//默认方向为向上
    bool isready=false;
    QTimer* timer;

    const int SnakeWidth=20;//蛇身体节点的宽度
    const int SnakeHeight=20;//蛇身体节点的高度
    const int SnakeSpeed=200;//默认蛇移动速度
    int moveSpeed=SnakeSpeed;

    QList<QRectF> snakeList;//表示贪吃蛇链表
    QRectF foodRect;//表示食物节点
    QSound* sound;

signals:

};

#endif // GAMEROOM_H
